<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > EDA技術(shù)在微機接口技術(shù)實(shí)驗教學(xué)中的應用

EDA技術(shù)在微機接口技術(shù)實(shí)驗教學(xué)中的應用

作者: 時(shí)間:2012-03-16 來(lái)源:網(wǎng)絡(luò ) 收藏

2.4 按鍵長(cháng)按、去抖及相關(guān)問(wèn)題的解決

本設計中,如果長(cháng)時(shí)間(超過(guò)2個(gè)掃描周期)按同一按鍵視為單次按鍵,處理方法如下:每次掃描到的鍵碼與暫存在data_key的鍵碼相比,如果相等則說(shuō)明按鍵未釋放,不作處理;如果不等說(shuō)明有新的按鍵按下,則觸發(fā)中斷。這樣設計解決了長(cháng)按鍵的問(wèn)題,但產(chǎn)生了新的問(wèn)題:如果下次(間隔了若干個(gè)掃描周期)還是同一鍵按下,那么會(huì )掃描到同一鍵碼,按照上述處理機制,這個(gè)鍵碼是不送數據線(xiàn)的,這是不正確的。

我們注意到,同一按鍵按下間隔的時(shí)鐘周期理論上為4個(gè)周期(按本設計4行掃描線(xiàn)計算),在本設計中,采用16.384 MHz時(shí)鐘,采用計數的方法進(jìn)行分頻,得到125 Hz的參考時(shí)鐘,故需要32 ms。在實(shí)際應用中,任何操作人員也達不到這個(gè)速度。所以,這里可以采用一個(gè)小技巧:

設計一個(gè)計數器,每掃描到一次為0鍵碼(無(wú)鍵按下),計數器加1。如果有鍵按下,即掃描到的鍵碼不為0,則計數器清零;如果計數到某一數值(即時(shí)間大于一個(gè)掃描周期),則保持當前計數不變。這樣通過(guò)綜合分析,得出觸發(fā)中斷、要求得到響應的條件為:

(1) 掃描到的鍵碼不為0;

(2) 本次掃描到的鍵碼和寄存器data key中的暫存碼不同;

(3) 計數器當前計數值大于3;

這樣就解決了不同按鍵的響應問(wèn)題,或者:

(1) 掃描到的鍵碼不為0;

(2) 計數器當前計數值大于等于5。

這樣就解決了在以上功能實(shí)現前提下同一按鍵連續按下的響應問(wèn)題。

大量實(shí)踐經(jīng)驗證明,按鍵抖動(dòng)時(shí)間一般為10 ms(保守估計),本設計中掃描時(shí)鐘為8 ms,在滿(mǎn)足快速響應按鍵的同時(shí),在較大程度上也實(shí)現了鍵盤(pán)去抖的功能。

2.5 VHDL程序設計

限于篇幅,這里只給出一組掃描線(xiàn)情況(ROW=“1110”)下按鍵識別的設計實(shí)現方法:



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>